import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // count:0
    tasklist:[]
  },
  // 定义计算属性
  getters: {
        unFinishCount(state){
          var arr = state.tasklist.filter((item)=>{
            return item.status == false;
          })
          return arr.length;
        }
  },
  mutations: {
    // 同步方法参数1  保存数据的state对象
    // 第二个参数   吊用同步方法时传入的参数
        // add(state,payload){
        //     state.count ++;
        // }
        addTask(state,payload){
            // 构建一个新的任务对象,state属性表示任务的状态
            var  obj = {id:state.tasklist.length+1,name:payload,status:false};
            state.tasklist.push(obj)
        },
        changeStatus(state,payload){
           var fi = state.tasklist.find((item)=>{
             return item.id == payload.id
           });
           if(fi){
             fi.status = !fi.status;
           }
        },
        del(state,payload){
           state.tasklist.splice(state,1)
           for(let i = 0;i<this.tasklist.length;i++){
             for(let a in this.tasklist){
               if(a == "id"){
                 this.tasklist[i][a] = i+1;               }
                 a = this.tasklist[i][a]
             }
           }
             
        }

  },
  actions: {
  },
  modules: {
  }
})
